dados = read_csv(
here::here("data/participation-per-country.csv"),
col_types = cols(
.default = col_double(),
site = col_character(),
country = col_character(),
geo = col_character(),
four_regions = col_character(),
eight_regions = col_character(),
six_regions = col_character(),
`World bank income group 2017` = col_character()
)
) %>%
filter(usuarios > 200)
glimpse(dados)
## Observations: 121
## Variables: 21
## $ site <chr> "StackOverflow", "StackOverflow", "S...
## $ country <chr> "Argentina", "Australia", "Austria",...
## $ PDI <dbl> 49, 36, 11, 80, 65, 69, 70, 39, 63, ...
## $ IDV <dbl> 46, 90, 55, 20, 75, 38, 30, 80, 23, ...
## $ MAS <dbl> 56, 61, 79, 55, 54, 49, 40, 52, 28, ...
## $ UAI <dbl> 86, 51, 70, 60, 94, 76, 85, 48, 86, ...
## $ usuarios <dbl> 2798, 12313, 2518, 2558, 4275, 10717...
## $ responderam_prop <dbl> 0.5357398, 0.6133355, 0.6310564, 0.3...
## $ perguntaram_prop <dbl> 0.5210865, 0.5897832, 0.5933280, 0.4...
## $ editaram_prop <dbl> 0.09256612, 0.14699911, 0.14932486, ...
## $ comentaram_prop <dbl> 0.25339528, 0.33395598, 0.35027800, ...
## $ GNI <dbl> NA, 59570, 48160, 840, 44990, 11630,...
## $ Internet <dbl> 51.0, 79.5, 79.8, 5.0, 78.0, 45.0, 5...
## $ EPI <dbl> 59.02, NA, 63.21, NA, 61.21, 49.96, ...
## $ geo <chr> "arg", "aus", "aut", "bgd", "bel", "...
## $ four_regions <chr> "americas", "asia", "europe", "asia"...
## $ eight_regions <chr> "america_south", "east_asia_pacific"...
## $ six_regions <chr> "america", "east_asia_pacific", "eur...
## $ Latitude <dbl> -34.00000, -25.00000, 47.33333, 24.0...
## $ Longitude <dbl> -64.00000, 135.00000, 13.33333, 90.0...
## $ `World bank income group 2017` <chr> "Upper middle income", "High income"...
Estamos interessados na relação entre quanto as pessoas de diferentes países comentam em questões dos outros. A proporção das pessoas do país que comentou nas questões de outros está medido na variável comentaram_prop.
Considerando essa variável, queremos examinar a relação entre ela e o quão hierárquicas são as relações em um país (PDI). Queremos também levar em conta o quanto as pessoas daquele país têm acesso à Internet (Internet) e qual o tamanho da base de dados que detectamos daquele país (usuarios).
Faça uma visualização que usa os princípios de eficácia no projeto de visualizações para facilitar as comparações que você acha que são as mais importantes para entendermos esse contexto.
v1 <- dados %>%
na.omit() %>%
filter(!is.na(six_regions)) %>%
ggplot(aes(
x = reorder(PDI, comentaram_prop),
y = comentaram_prop,
fill = six_regions,
size = log10(usuarios),
PDI = PDI,
Site = site,
color = Internet,
Usuarios = usuarios,
Pais = country
)) +
scale_fill_discrete(
name=""
) +
scale_size_continuous(
name ="",
range = c(1, 6)
) +
scale_color_continuous(
name ="Internet",
type = "viridis"
) +
geom_point(
alpha = .6
) +
labs(
x = "Índice de Distância de poder/hierarquia",
y = "Proporção de usuários que comentaram",
title = "Relação de usuários que comentaram questões no StackOverflow e Superuser",
caption = "Relação entre comentários, PDI, internet e usuários para cada site"
)
ggplotly(v1,
height=500,
width=900,
tooltip = c(
"PDI",
"comentaram_prop",
"Site",
"Internet",
"Usuarios",
"Pais"
)
)
totalUsers <- dados %>%
na.omit() %>%
filter(six_regions == 'europe_central_asia') %>%
summarise(soma = sum(usuarios))
datatable(head(totalUsers))
O sucesso dos sites de Perguntas e Respostas online (Q&A) se baseiam nas contribuições dos usuários. Uma das formas de encontrar a relação entre quanto as pessoas de diferentes países comentam em sites de Q&A e a proporção das pessoas do país, é plotando um gráfico de dispersão contendo as variáveis “internet” e “usuário” para diferentes países e continentes. A visualização por seis regiões dá o indicativo de quais regiões interagem com maior frequência, devido a incidência de um número maior de pontos relacionados. De acordo com o gráfico, estima-se que a Europa central possui o maior número de usuários (139719) que comentam nos sites(Stackoverflow e SuperUser), enquanto que os pontos marcados por esferas menores, indicam que as regiões tem um número de usuários menor. Isso indica que na África, por exemplo, o volume de comentários é menor, pois o número de usuários também é menor. Também é possível observar a frequência de comentários por site. Conclui-se que esta visualização carrega uma grande quantidade de informações, podendo relacionar diversas variáveis. A relação entre o PDI (Índice de Distância de poder/hierarquia, onde quanto menor esse índice, menor a distância entre as pessoas de diferentes níveis, ou seja, maior a relação/interação entre elas) dos países e a proporção das pessoas que comentam indica que um número alto ou baixo de comentários não está necessariamente ligado à interação. A cor de contorno varia de acordo com a taxa de penetração da internet, dando o indicativo das regiões que atingem um maior percentual de utilização. O número de comentários pode ser baixo devido a um número pequeno de usuários ou acesso à internet, que pode ser medida como a taxa de penetração. Dado que a participação em ambientes online requerem acesso à Internet, a porcentagem de contribuidores deve aumentar com a taxa de penetração na Internet do país. A maneira mais eficaz de obter informações em um gráfico é relacionando as 4 variáveis simultaneamente. As variáveis dependentes e independentes nos eixos de coordenadas e as variáveis correlatas em legendas de cor e tamanho. Essa representação consegue diferenciar casos em que a quantidade de comentários sofre interferência direta de fatores externos (usuários e internet). A visualização é a opção mais rica, no que diz respeito a informações que podem ser extraídas do gráfico.
Em seguida, faça 5 visualizações que usem as mesmas variáveis e também pontos, mas que sejam menos eficazes que a que você escolheu acima.
v1 <- dados %>%
na.omit() %>%
filter(!is.na(six_regions)) %>%
ggplot(aes(
x = reorder(PDI, comentaram_prop),
y = comentaram_prop,
color = six_regions,
size = log10(usuarios),
)) +
geom_point(
alpha = .6
) +
facet_grid(
site ~ .,
scales = "free_y"
) +
labs(
x = "Índice de Distância de poder/hierarquia",
y = "Proporção de usuários que comentaram",
title = "Relação de usuários que comentaram questões no StackOverflow e Superuser",
caption = "Relação entre comentários, PDI, internet e usuários para cada site"
)
v1
v2 <- dados %>%
na.omit() %>%
filter(!is.na(six_regions)) %>%
ggplot(aes(
x = reorder(PDI, comentaram_prop),
y = comentaram_prop,
color = six_regions,
size = log10(usuarios),
shape = site
)) +
scale_shape_discrete(
name ="Site",
breaks=c("StackOverflow", "SuperUser")
) +
scale_size_continuous(
name ="Usuários",
range = c(1, 6)
) +
geom_point(
alpha = .6
) +
labs(
x = "Índice de Distância de poder/hierarquia",
y = "Proporção de usuários que comentaram",
title = "Relação de usuários que comentaram questões no StackOverflow e Superuser",
caption = "Relação entre comentários, PDI, internet e usuários para cada site"
)
v2
v3 <- dados %>%
na.omit() %>%
filter(!is.na(six_regions)) %>%
ggplot(aes(
x = reorder(PDI, comentaram_prop),
y = comentaram_prop,
size = log10(usuarios),
shape = site
)) +
scale_shape_discrete(
name ="Site",
breaks=c("StackOverflow", "SuperUser")
) +
scale_size_continuous(
name ="Usuários",
range = c(1, 6)) +
geom_point(
alpha=0.7,
color="black",
stroke=0.3
) +
labs(
x = "Índice de Distância de poder/hierarquia",
y = "Proporção de usuários que comentaram",
title = "Relação de usuários que comentaram questões no StackOverflow e Superuser",
caption = "Relação entre comentários, PDI, internet e usuários para cada site"
)
v3
v4 <- dados %>%
na.omit() %>%
filter(!is.na(six_regions)) %>%
ggplot(aes(
x = reorder(PDI, comentaram_prop),
y = comentaram_prop,
color = six_regions,
size = log10(usuarios),
shape = site
)) +
scale_shape_discrete(
name ="Site",
breaks=c("StackOverflow", "SuperUser")
) +
scale_size_continuous(
name ="Usuários"
) +
geom_point() +
labs(
x = "Índice de Distância de poder/hierarquia",
y = "Proporção de usuários que comentaram",
title = "Relação de usuários que comentaram questões no StackOverflow e Superuser",
caption = "Relação entre comentários, PDI, internet e usuários para cada site"
)
v4
v5 <- dados %>%
na.omit() %>%
filter(!is.na(six_regions)) %>%
ggplot(aes(
x = reorder(PDI, comentaram_prop),
y = comentaram_prop)) +
geom_jitter(width = .1, alpha = .2) +
geom_point(
color = "orange",
shape = 15,
size = 3
) +
labs(
x = "Índice de Distância de poder/hierarquia",
y = "Proporção de usuários que comentaram",
title = "Relação de usuários que comentaram questões no StackOverflow e Superuser",
caption = "Relação entre comentários e PDI"
)
v5
VISUALIZAÇÃO 1: A separação das visualizações em duas caixas não é muito eficaz pois há uma dificuldade na leitura das informações quando precisamos fazer comparações entre os sites. Outro fator a ser considerado também é que a falta de continuidade no eixo vertical também prejudica a leitura.
VISUALIZAÇÃO 2: A visualização é rica em termos da quantidade de informações e da relação entre as variáveis, porém, esse tipo de visualização sem uma biblioteca específica, como a plotly, perde eficácia, deixando os dados estáticos.
VISUALIZAÇÃO 3: Esta visualização é semelhante a 2, porém, é monocromática, o que dificulta a distinção dos pontos e a interpretação dos dados.
VISUALIZAÇÃO 4: Esta visualização é semelhante a 2, além de trazer os problemas citados na ultima, traz as cores de forma sólida, que em alguns dados acabam se confundindo.
VISUALIZAÇÃO 5: O gráfico aponta a relação entre PDI e “comentaram_prop”, porém, deixa a desejar em informações complementares e é necessário que se conheça os fatores de “internet” e “usuários” para uma interpretação mais conclusiva.
Inclua o continente dos países (six_regions) na visualização.